package org.monkey.socket.plugin.service;

import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.group.ChannelGroup;
import io.netty.handler.codec.http.FullHttpRequest;
import io.netty.handler.codec.http.websocketx.CloseWebSocketFrame;

/**
 * 通道管理器 用于和用户登录登出业务逻辑交互，如果对namespace+userId的管理方式不满意，可以仿DefaultMsgChanelManage重写IMsgChannelManage
 */
public interface IMsgChannelManage {

  void onLogin(ChannelHandlerContext ctx, FullHttpRequest request);

  void onClose(ChannelHandlerContext ctx, CloseWebSocketFrame frame);

  void disConnected(ChannelHandlerContext ctx);

  ChannelGroup getChannelGroupByArgs(String... args);
}
